Roaming License and Compatibility

Roaming license is a new key feature introduced in ElecKey version 2.0.9.0, included in the Ultimate edition and available by feature upgrade for other editions. Roaming license provides greater flexibility and convenience, allowing the user to check out (or borrow) a network license from the NKLS (NetKey License Server). The user can then disconnect from the network and use the application temporarily off-site (e.g. for 15 days). The roaming license feature is however not backward compatible. The following describes the details, including compatibility information.

Key Location

When checking out a network license from the NKLS, the Key (with the same Program ID as Network Key) will be created in the Key location: User Profile folder, on the local machine. It should be reserved for the roaming license. To avoid any conflict, if your application also supports Machine License (with the same Program ID), you should use the other Key locations options: All Users Profile, C:, or D:.

License Activation

When using LicenseKey Manager or USB LicenseKey Manager to issue a network license, you can enable the roaming license by selecting the Max-Roam period (7, 15, or 30 days) under the Key Properties pane / Network tab. Note that, when the roaming license is enabled, the Key Data address 030h to 03fh is reserved for internal use. To avoid any conflict, you should not use those Key Data addresses in your protected application.

License Upgrade

You can enable the roaming license and upgrade the existing network license by using LicenseKey Manager. The user must run the Register utility for Network Key and send you the Registration ID. In LicenseKey Manager, under the Key Properties pane / Main tab, select the Implementation to None. And, under the Network tab, disable the Max-User checkbox and select the Max-Roam Period. Then, generate the License Key to be returned to the user.

Shell Protection and Instant KeyCheck API

The application protected by the shell protection and Instant KeyCheck API with Network Key using the ElecKey versions older than 2.0.9.0 automatically supports the roaming license. The protected application can detect both network license on the server and roaming license on the local machine. There is no need to use the new ElecKey version to re-protect your application.

KeyCheck Class Library

The application protected by the KeyCheck Class Library with Network Key using the ElecKey versions older than 2.0.9.0 does not support the roaming license. You can enable the roaming license support by changing the service type from NETWORK_SRV to NETWORK_ROAM_SRV, without having to modify the code to detect the roaming license. The application will be able to detect both network license on the server and roaming license on the local machine. Below are the related properties and methods that you need to change in the code. See the code examples in the Examples\ folders named with “Network”.

 

Kc.SrvIdx = Ekc.KeyCheck.NETWORK_ROAM_SRV;

Kc.OpenKeySrv(Ekc.KeyCheck.NETWORK_ROAM_SRV);

Kc.CloseKeySrv(Ekc.KeyCheck.NETWORK_ROAM_SRV);

 

Then, you need to recompile your application with the latest version of the KeyCheck Class Library.

 

note NOTE: To create the end-user utilities for Network Key (Register, Transfer, Destroy, and Remake) using the KeyCheck Class Library, you must use the service type as NETWORK_SRV. So the utilities can connect to the NKLS and detect the network license.

KeyCheck .NET Component

The application protected by the KeyCheck .NET Component with Network Key using the ElecKey versions older than 2.0.9.0 does not support the roaming license. You can enable the roaming license support by enabling the Roaming property of the NetworkKey class, without having to modify the code to detect the roaming license. The application will be able to detect both network license on the server and roaming license on the local machine. Then, you need to recompile your application with the latest version of the KeyCheck .NET Component.

 

note NOTE: To create the end-user utilities for Network Key (Register, Transfer, Destroy, and Remake) using the KeyCheck .NET Component, you must disable the Roaming property of the NetworkKey class. So the utilities can connect to the NKLS and detect the network license.

Compatibility

To use the roaming license feature, you must update and deploy ElecKey version 2.0.9.0 or higher to your system, including the protected application and KeyCheck API. The table below lists the files that must be updated.

 

File

Version

Description

System Files:

Ekc3220.dll

2.0.9.0

System file for 32-bit Windows Applications

Ekc6420.dll

2.0.9.0

System file for 64-bit Windows  Applications

Nkag20.exe

2.0.9.0

Network Key agent

NetKey License Server:

NKLS40EK.exe

4.0.9.0

NetKey License Server

NetKey Manager .NET Component  (To be recompiled with application):

Nrm.Comp.dll

2.0.9.0

NetKeyManager.NET Component

KeyCheck Class Library (To be recompiled with application):

All KeyCheck class library files

2.0.9.0

KeyCheck class library for any languages

KeyCheck .NET Component (To be recompiled with application):

Ekc.Comp.dll

2.0.9.0

KeyCheck .NET Component

KeyCheck ActiveX:

Nkas20.exe

2.0.9.0

Network Key ActiveX

KeyCheck SDK for macOS (To be recompiled with application):

KeyCheck SDK for Mac

2.0.9.0

Keycheck SDK for macOS

Utilities (Generated by ElecKey system V 2.0.9.0 up):

Roam.exe

2.0.9.0

Roam utility

 

note NOTE: The Roaming License feature does not support DOS/Win16 applications.